import axios from "axios";
import  NProgress  from "nprogress";
import "nprogress/nprogress.css"

//创建实例对象
let instance = axios.create({
    baseURL:"https://www.XA221208.com",  //默认域名
    timeout:5000   //超时时间
})


//请求拦截
instance.interceptors.request.use((config)=>{

    //开启 进度条
    NProgress.start();
    //返回 请求的所有的配置信息
    return config;
})

//响应拦截
instance.interceptors.response.use(
    (response)=>{
        

        //关闭进度条
        NProgress.done();

        switch(response.data.code){
            case 200:
                //返回响应的结果
                return response.data.data;
                
            default:  //其他结果
                return response.data;
                
        }

        
    },
    (error)=>{

        
        //关闭进度条
        NProgress.done();

        //统一输出 错误信息
        console.log(error.message);
        // 1. 返回一个失败状态的Promise
        // return Promise.reject();

        // 2. 返回 一个 penging 状态的Promise 。中断Promise链
        return new Promise(()=>{});
    }
)

//暴露 instance
export default instance;